{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Coloring bars\n",
    "\n",
    "Demo of using color params for barchart-based visualizers"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/sklearn/externals/joblib/__init__.py:15: DeprecationWarning: sklearn.externals.joblib is deprecated in 0.21 and will be removed in 0.23. Please import this functionality directly from joblib, which can be installed with: pip install joblib. If this warning is raised when loading pickled models, you may need to re-serialize those models with scikit-learn 0.21+.\n",
      "  warnings.warn(msg, category=DeprecationWarning)\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    "\n",
    "from sklearn.naive_bayes import GaussianNB\n",
    "from sklearn.ensemble import RandomForestClassifier\n",
    "from sklearn.preprocessing import LabelEncoder\n",
    "from sklearn.datasets import make_classification\n",
    "from sklearn.linear_model import LogisticRegression\n",
    "from sklearn.model_selection import StratifiedKFold\n",
    "from sklearn.ensemble import GradientBoostingClassifier\n",
    "from sklearn.feature_extraction.text import CountVectorizer\n",
    "from sklearn.preprocessing import LabelEncoder, OrdinalEncoder\n",
    "\n",
    "from yellowbrick.features import Rank1D\n",
    "from yellowbrick.datasets import load_game\n",
    "from yellowbrick.datasets import load_hobbies\n",
    "from yellowbrick.datasets import load_concrete\n",
    "from yellowbrick.datasets import load_occupancy\n",
    "from yellowbrick.text import FreqDistVisualizer\n",
    "from yellowbrick.model_selection import CVScores\n",
    "from yellowbrick.features import FeatureImportances\n",
    "from yellowbrick.contrib.missing import MissingValuesBar\n",
    "from yellowbrick.target import ClassBalance, FeatureCorrelation"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## Rank1D\n",
    "\n",
    "has a `color` param now"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "X, y = load_concrete()\n",
    "\n",
    "visualizer = Rank1D(algorithm='shapiro', color=[\"cadetblue\"])\n",
    "\n",
    "visualizer.fit(X, y)\n",
    "visualizer.transform(X)\n",
    "visualizer.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## FreqDistVisualizer\n",
    "\n",
    "has a `color` param now"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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Rd1bpN966y2OP/54jj/+eJ588sk66y644AKee+45AN544w1+8pOfcOqpp/L886v9kL+sqqurN+hWj5SSkpIGd0souIuIFLChQ4fy4IOrnno7depUWrRowcMPP8wBBxzApEmT6mx/7733cv311zN+/Hjuvvvu2uXjxo1j/vz5ta//8Ic/cMcddzB69GhGjhy5wfaJrwlFRUW5N0pQkUhEZA0477zzGDx4MFtssQWDBw+mX79+zJw5k8cee4yioiLOP/98evfuzeTJk3nggQeoqqriF7/4BXvuuSdXX301y5YtY+nSpdx6660AzJw5kzPPPJPq6mpuuOEGNtlkE6699lpuuummOvvde++9MTMWLVoEwIcffsg+++wDwG677caIESPqbL/LLruwaNEiKioqam9TdnfmzJnDQQcdVLvdypUr2XLLLQHYdNNN+eyzz9hqq62a5sOLmdOxR6Om1+WLwpxLreBq7nM69sj4T0RkbTnyyCN56qmnqKqqwt3ZcssteeKJJ5g4cSJjxozhtttuY8WKFdxzzz089NBDjB8/nvfff59PPvmEM888k9GjR3PEEUfwwgsvAFBWVsaYMWMYOHAgd955J61bt64X2AF69+5d5/WOO+7ISy+FCc1eeeUVli9fXmf9FltswcUXX8yRRx5Jnz59qKio4Pbbb+eyyy6rs13Lli358MMPWbJkCW+//Xa9dGTtUs1dRGQN6N27N+effz5du3Zlv/3245NPPsHMageMbbrppnz99ddsttlmlJWVUVZWxnnnncenn37KmDFjeOyxx1iwYAE9eoSKyu67705RURHdunXjk08+yTsfvXr14vXXX+fUU0+lR48etG/fvs76O++8k8mTJ9OuXTvOPvtsOnbsyGeffcYFF1zAZ599xtNPP82OO+7Ib3/7W37729/Svn17unXrRrt27Rr181pXLF++nCuvvJJ58+axcuVKrrrqKh5++GE+/fRTqqqqOPvsszn88MM544wz6NChA9988w1HHHEEzz//PEuXLuWrr76if//+9OnTh4MPPpgpU6ZQVlbGLbfcwvbbb0+vXr245JJLqKmpoaKigmuvvZauXbt+53wruIuIrAGpAP7ggw9y+eWX07ZtW2bPnk1VVRUVFRV8/vnntG/fnvnz57NixQoqKyu58sor6dSpE4cccgiHH3441113XW167g7AjBkz2G677fLOx5w5c9h7770ZNGgQEyZMoHPnznXWt23blpYtW1JaWspGG23ErrvuyuOPPw7AHXfcQdeuXdlmm20YPXo0999/P1VVVfTv359OnTo1wqe07nn44YfZYostGDZsGHPnzuXJJ5+kQ4cO3HLLLSxZsoTjjjuOfffdFwitM4ceeiiPPvoo3377LQ888AALFy7khBNOyHif/4wZM2jfvj033XQT77//PsuWLWuUfCu4i4isIUcddRS3334722+/fe3rU045hcrKSgYMGEBpaSkXXHABZ5xxBjU1NVx88cUUFRVx3XXXMW7cONq1a0eLFi3o2rUry5cv58wzz6SmpoYbb7yRpUuXpu1zT+rcuTN/+MMfGDFiBNtvvz3XXXcdK1asYNCgQQwbNoxf/epXnH322ZSUlLD//vvTpUuXtOl07NiRk046ibKyMgYOHNjon9W64oMPPuDAAw8EYNttt+WLL75gv/32A2CjjTaiS5cutS0n8ULW3nvvTXFxMZtssglt27Zl4cKFddKtqakB4MADD2Tu3LlcdNFFNGvWjAsvvLBR8q3gLiKyhvTs2ZOePXvWvj7ttNM47bTT6mxz+OGHc/jhh9dZ9vTTT9dLKzUoLi5TYD/uuONq/27VqhX33XdfnfU1NTVss802QAg2qWCWdPHFF9f+fcQRR3DEEUek3a6QdOnShZkzZ9K7d28++eQT/v73v1NaWsqhhx7KkiVLmD17du3Awvio9n//+98ALFiwgCVLlrDxxhtTWlrK/Pnz2XLLLXnvvffo0qUL06dPp1OnTowaNYo333yTW2+9lbFjx37nfCu4i4gIp5xyytrOwjrp5JNP5qqrruL000+nqqqK++67j/Hjx3PKKadQUVHBgAED2Hjjjeu9b8GCBfz0pz9l8eLFDB48mJKSEs4991zOO+88tthiC9q2bQvAzjvvzMCBA5kwYQKVlZX079+/UfKt4C4isoErKipi0003XdvZyMuavnWtrKyMP/7xj3WWpXsQTrK2vffee9e7wyA1OVDSAw880Ag5ravgboUTERHZ0Cm4i4isR4455pgGv2fo0KG108YuX76c/v37c8YZZ/Czn/2Mb775hhUrVjBgwABOOeUUrr/++trBXinPPfccJ554IscffzyPPvpoxmVPP/00xx57LGeccQYzZsz4jke6/jruuOPq1drXNAV3EZECtXLlSgYOHMizzz5bu+zxxx9nr732YuzYsRx22GFMnDiRJ598kl133ZUJEyawbNkyZs2aVSedO+64gzFjxjBhwgRGjRpFVVVV2mXDhg1j7NixDB8+nGHDhq3pwy1YycJWPtTnLiKyBpx00kmMGzeOV199lbvuuouHH36Yu+++m1122YVPP/203jS0J554Im3atOGAAw6goqKC5557jh133LE2vYEDBzJ//nyKi4u55ZZb+Pbbb5k4cSKXX3557TYrV67k+OOPr3OL1pFHHklxcajXpZ40duyxx1JVVUVVVRULFy5ko402qpP3UaNG0bJlSyorK6mpqaG4uLjesq+++ootttiCNm3aAKzWk8ySiouLWbFiBaWlpaudRiGoqqpq8Geg4C4isgbstddezJgxg+nTp/Ptt9+yfPlyysvLOfbYY7nrrruYOHEiFRUVnHjiiRx88MEsWLCA4cOHU1paykUXXcSkSZNwdwYNGsTixYv5+OOPGTNmDLNnz2bx4sV06dKlTmCHcNvbfvvtR3l5ee2y1q1bA2EymwkTJjBu3DggBNKjjjqK1q1b07FjxzrppEaD33DDDfTr14+ioqJ6yzp06MD8+fNZuHAhK1eu5D//+Q8rVqz4TsG9WbNmfPvttyxbtoySkpLVeoDK+qympqa20NXQz1HN8iIia8CBBx7Ia6+9xkcffcQRRxzBSy+9RIsWLZg/f369aWi//PLL2iA7d+5cdthhB4qKith5551p0aIFbdq04dxzz+VXv/oVI0eOpKSkpEF5effdd7n00ksZNmxY7S1ZRUVFTJ48mX79+jFy5Mg621dXVzN48GBKS0s555xz0i4rLi7miiuuYMCAAQwbNow999yTli1bfufPrU2bNpSWlm5wgR3Cd1JaWlrbGtIQqrmLiKwB3bt35+6772azzTbjhz/8Iddeey0nnngiW2yxRdppaFNN5507d8bdqa6u5qOPPqKiooL58+fz0Ucfce+99zJ16lQefvhhrrjiirzyMW/ePC6//HKGDx/O1ltvDcCECRNo3bo1Rx99NC1btqzdd8rNN99MmzZt6gwSS7fsnXfeYfz48SxcuJDBgwc3WkDWM90bTp+YiMgakJqrfa+99qJbt27MnTuXXr16sckmm9SbhrZ58+a17+vYsSOHHXYYJ5xwAjvssAMtWrSgY8eOzJkzhxNOOIEWLVpwzTXX8NFHH9Xrc0/n/vvvZ+nSpVx99dVAeKDN0UcfzWWXXcakSZPYaKONuPHGG5k3bx4PPPAA559/PmPHjmWPPfbgjDPOAMKz3JPL7rrrLpo1a0a/fv1o2bIlQ4YMaZoPUvJStDqj8BpDeXn5tsCH3bp1q31mcGPI9mjXQn1ur4ism1588cWMU7mu61auXMmIESMYMGBAo6S3Pn8W66KKiorUXQ3bde/efW5yvfrcRUSknurq6nrz3sv6I69meTO7EjgaKAXuAv4JjAZqgFlAf3evNrPBwBFAJXCJu7/eFJkWEZGmlXqmvKyfcgZ3M+sF7AfsD7QCLgNuBa5x9xfM7B7gGDP7COgJ7ANsBfwF2LuJ8i0isl559NFHWbRoEWedddYa3e9HH33EoEGDqK6u5vDDD6+z/xkzZnDzzTcDsHjxYoqLixkyZEi9ZfFZ6V5//XWuuuqqNXoM0nD5NMv3AWYCjwF/AyYD3Qm1d4ApQG/gAOAZd69x94+BZmbWMU16IiKyhowbN46f//znTJw4kSeeeIKlS5fWrtttt90YO3YsY8eOpUuXLlx11VVpl0F4uMnNN9+8WrOlyZqXT7P8JsA2wJHAdsATQLG7p77hxUA7oC3wZex9qeVfZEs8Oc3hd9U+y7r4RA4iIk3tyy+/rA2mFRUVTJ06lWeffZbKykpuuukmmjVrxu9+9zuWLVvGsmXLGDp0KJ9//jkPPPAAK1as4Ntvv+X666+nc+fOXHvttXz11Vd8/fXXXH311SxfvpyRI0dyzz33cMkll3DWWWexYMECVq5cSd++fWvzsMMOO/DFF1/w9ddfU1VVxcqVK+sEeAjPHq+oqKBr166165LLNttsMwYNGsSLL75Y7/35mDt3bu0EOtL08gnuXwLvufsKwM1sOaHZPaUN8DWwKPo7uTyrRh8tn2Vd9+7dG20/IiK5LF26tDaglZWVseWWWzJ06FDuu+8+Xn31VXbZZRfOPvts9t13X0aPHs306dPZaaedqK6uZvz48ZSXlzNu3DguvPBC+vbtS58+fXjuuef4xz/+wRVXXMHzzz/PlVdeyU477cT++++fNg+bb745V1xxBSNHjqRHjx60b1+/CjRp0iTOP//8OsE3uaxv375Mnz6d5s2br1aQ3nbbbXUNbkSx0fJp5dMs/xJwmJkVmVlnoDUwNeqLB+gLTANeBvqYWbGZbU2o3S/4TrkXESkgZgZAhw4dWL58OR06dGDSpEkMGjSIadOmUVVVBYSpaouKith111354IMPaNeuHS+88AKXX345TzzxRO12Z5xxBk8//TQnn3xyxn3edtttPPjggzz77LMsXLiwXgvmypUrmTt3LrvuumvWZbJ+yRnc3X0y8CbwOqHPvT9wKXCtmb1KGEH/iLuXE4L8q4TBdP2bKtMiIoVgzJgxHHLIIdx4441su+22tcvfe+89AGbOnMm2227LY489xnbbbcdNN93EHnvsUdvvffPNN3PllVcydOjQjPvYaKONaNWqFcXFxWy88cYsWbKkznp3r/NAmkzLZP2S161w7p5uyqOeabYbAgz5blkSEdkw9OzZk+uuu45x48bRrl07WrRoQdeuXfniiy8488wzqaqq4sYbb2Tx4sVceumlPP/883Tq1ImioiIef/xxOnXqxFlnncUHH3zAE088QWlpKStXruSoo46q3cevf/1rBg4cSHFxMV26dKFHjx5MnTqVb775huOOO46PP/6Yzp0718lXumWyftngZqjTDHYisqaszqxs06dP57nnnqudHrYpzJs3j5deeokTTzyxyfaRpBnqGpdmqBMRWUvW1dvGmjdvTr9+/dbY/qqrq9fYviTQg2NERJpIRUUFFRUVDWqd3Geffdhnn32aMFfUe157U5s5cybbbbfdGt3nhk7BXUSkiRxyyCFMmTKFTTfdlHbt2m1wzySvrKxk3rx5dOrUia222ir3G6TRKLiLiDSRkpISjjzySJYtW8Y333yztrOzxpWUlGBm9Z4PL01PwV1EpIm1atWKVq1are1syAZExSkREZECo+AuIiJSYBTcRURECoyCu4iISIFRcBcRESkwCu4iIiIFRsFdRESkwCi4i4iIFBgFdxERkQKj4C4iIlJgFNxFREQKjIK7iIhIgVFwFxERKTAK7iIiIgVGj3xNY07HHhnXdfli2hrMiYiISMOp5i4iIlJgFNxFREQKjIK7iIhIgVFwFxERKTB5Dagzs/8DFkUvPwRGALcDlcAz7n6tmRUDdwG7AxXAue7+fuNnWURERLLJGdzNrAVQ5O69YsveAvoBHwB/N7M9ge2AFu7+IzPbF/gjcEyT5FpEREQyyqfmvjvQysyeibYfApS5+xwAM3sa6A1sDjwF4O6vmdkPmiTHIiIiklU+wX0ZcAtwH7Aj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\n",
      "text/plain": [
       "<Figure size 600x300 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "corpus = load_hobbies()\n",
    "y = LabelEncoder().fit_transform(corpus.target)\n",
    "\n",
    "vectorizer = CountVectorizer(stop_words='english')\n",
    "docs       = vectorizer.fit_transform(corpus.data)\n",
    "features   = vectorizer.get_feature_names()\n",
    "visualizer = FreqDistVisualizer(\n",
    "    features=features, orient='v', size=(600, 300), color=[\"crimson\"]\n",
    ")\n",
    "visualizer.fit(docs)\n",
    "visualizer.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## CVScores\n",
    "\n",
    "has a `color` param now"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "X, y = load_occupancy()\n",
    "\n",
    "cv = StratifiedKFold(n_splits=12, random_state=42)\n",
    "visualizer = CVScores(\n",
    "    GaussianNB(), cv=cv, scoring='f1_weighted', color=\"goldenrod\"\n",
    ")\n",
    "\n",
    "visualizer.fit(X, y)\n",
    "visualizer.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## FeatureImportances\n",
    "\n",
    "has a `colors` and a `colormap` param now; \n",
    "`colors` is for `stack==False` and `colormap` is for `stack==True`"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "X, y = load_occupancy()\n",
    "\n",
    "model = RandomForestClassifier(n_estimators=10)\n",
    "colors = [\"lightpink\", \"pink\", \"hotpink\", \"crimson\", \"orchid\"]\n",
    "viz = FeatureImportances(model, colors=colors)\n",
    "viz.fit(X, y)\n",
    "viz.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAagAAAEYCAYAAAAJeGK1AAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjAsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy+17YcXAAAgAElEQVR4nO3debxc8/3H8VcSgtpqqTVqz0dTS0gQQkTLzxqq6KJ2sRRNqq1dUNWipUUXSsWeIkhLF7Gm9i3WUB8k4tciPzuxy/L74/MdmYx775yZO2fuyZ338/HII/fOcs5nZs6d7/l+v5/z+faYPXs2IiIiRdOzqwMQERFpixooEREpJDVQIiJSSGqgRESkkNRAiYhIIamBEhGRQpqv2Ts0s9nAJGBm2c0Pu/vwOre3IXCAux/SiPja2cds4Evu/npe+2hnv8OB3u7+h2butzPMbDHgn8AXgRPd/bo2HtMbuBO41t3PTLdtCJwNLAz0As5w9yvaeO4lwNbAaxV3be/uL9cZ883AHs3+fGtlZgOBY9x9twZtbyqwm7s/3IBtrUB8npt28JhVgTPdfdeMjx9KHEtedvOiwNPAvu7+RmfjbjQzOwV43t0v6+pYuoOmN1DJlg38Mvgq0KdB2yqazYjGfF7SH1jW3dfo4DFnA6uXfjGzHsB1wP7ufquZ9QEeMbMH3P25Np7/m1LD1iBbN3BbuUkNSUMap0ZLJwftNjbJyoDV8HiAye7ev/SLmfUijpWfAMfWF21+3P3Ero6hO+mqBqpNZvYV4BxgKeIs+lx3H21mPYHfAIOIM6gewHDgf4FTgMXN7GLgUuB37r522t7Q0u9mdjKwCbA88IS772lmxwO7EkOdU4FDOzoLN7NVgNvTv02A+Yk/lIOBtYCHge8CXwb+BUwA1kvxHu7ud5nZ/MCvga8TvcgHgCPcfXo6o30AWBc4DtgJ2NrMPgSuBf4ILAssB7wIfMvdX03PuyRt88vA1e5+VIp5f+DHaV+vA/u4+3/MbBhwAtAb+AD4ibvfZ2ZrARcBC6a4/9RWD87MvgGclD6nd4EfAe8Ao4EVzewxYBN3/7DieXsBiwN/L7t5AeCn7n4rgLv/18xeJ0482mqg2pR6ZmcAW6S4HgVGuPu7ZrZjek97A8sAl7r7qHTcANxhZtsDd1HWqyj1MtJ7dxfwb2CVtI9V0/4WBmYBJ7v738xsOeAyYOm07b+7+6g24p2rZ176HfgIuBhYM213InGMDWHO8XwJ8b6vA6wEPAN8x93fS6/jDOIzfwzYCtjM3afW8F6OIo7lGcCzxPE7zczWID7jJYFXiGPkCuJYn+Tui7R1DBHH7p+IY2N8ej2lx88H/BLYMe3vXuDQdkJbLL1H96Q4Fye+M9Yh/h5vA4509xntvQ/AUOAA4nN7x923NLMD0j57Am+k1/uMmW1G/L32AmYDp7n7dR3cfkl6XWea2ebAr4AvAJ8AJ7j7TWa2L7AL8dmume7b293ntZPR3HXVHNQdZvZY2b9l0kF6LTGEMYD4AviJmQ0CNgZWIL7w+hEN0THu/h/gROAud98vw35XBjZIjdPexEG9UTpD+wfxB1TNqsAN7v5V4o/hHOIP+avA5kQjCtFQjE/bPga4OjVOJ6TXsl7615M4iEsmuftX3H0ccAPRW/g98B3gPnffBFiNaFT2KnveIu6+OXFW+gMzW9XM1iP+QLd193XT9o43szWBXxDDYusDBwHXm9nCwJHAjekz2B4Ykk4QPpO+gM4Hdk3bPRH4K/GFNZx01ttG47QOMDLt7zPu/pG7X1T2uIOARYD72/kMjqg4fkrDw8cQX3AD3H094GXg9NRD+zHROA8kPqNjzWzpsuNmy3Q8daQP8DN378ucRmQvd9+AOJk4z8y+DBwITEm3bw6smb5Is9oFWDQdOxum21Zr43EDgG2BrxDH1O5mthRwObBnev4dwIo17Bsz2w/YDtgwfb6TiBMg0rb/nE4CRxAnapU+dwwRX+KlY2Obiscfml7LesDaxEnot9N9q6fPeJKZvUr8zd1A9MIhTlwnpn2tT5wU/CjD+/BVYGhqnLYA9gE2T38PvwSuT4/7KfDrtP39ga9Vub30Hi5FfJ+NTO/hPsAVaZgT4vvtB+l9vCe9Z1KhMEN8ZtaPGPYZbWalmxcC1nf388zsBOBgM1udOAOaXsd+73f3GennHYGNgIfT/noRZzrVfArcmH6eDNzr7u+m1/AycWb5MvCWu48BcPd/mtlMome0HXC8u3+anvNb4C9l27+rrZ26+zlmtrmZ/Yg461qb6G2V/DU97qX0h7wk8UcwvvTF6+5np30eSvQkbyt7r2cBawDjgMvMbCPgVqIHMqsinK8Bt7n7lLTd29M+BxBfRJ+TvqAvJ+Z63i/bb+XjjiEasW0rG7gy7Q3x7UjMfW2dtt8beNXdZ6ce445mtgfxhd6DOIOuZah5BnBf+rnUG/9L2WuZTXzGNwH/SI3VrcTJ1Ds17Odu4BdmNgG4BTjb3Z9PQ5/lbnL3jwHM7EniMx8CPO3ujwO4+6Vmdm4N+4Y4Ri929/fT7+cQJzbLEn8zQ9K2/21mt7Xx/DaPofY+c6Jnc3nZ5/3t9JqGUjbElxrOXxAniJ+mx+4IbJR6QBDfGVD9fXii9HcL7EAc+/eWxbikmS0JXAP8Ph0/txK9cDq4vWRjYi7qgbT/p8zsHuK7azbRqP43PfYR4JvtvTmtrEhZfL2At9OZd/90UA4CLjazHZgzJPRX4uy9RxvbmF1xe++K+9+r2N8ZZfsaCAzOEOcn7l7+JfxpO4+bUfF7T2KoofI970kMTbQV42fM7AxiOPM14ALgZuZ+reVf5qX3YQZlDYaZLZR6P72IBqbyvZ7k7n8jGsBriDPSJ9NJQWXMlSpfR6VtiMZjTBr+24noCZ2SYlvAzP5M9EY3KX2x1KgXccZaek0bAbulnuGjwAbEl8GRxOdW6zH0cdkJTi/g3228h+Pd/SGip30BMRz4oJm1N9/SAz4bngTA3V8gvjBPI4a0bjWztuae2vvMK19X5QlGNW0do/MRvcbPYk5mVjyWjMdQucrjdFkzW76N7V5M9J7+nEZcID6H3cs+g42Bw6n+PlR+F1xeto0NiO+Dt9z9j8RIyy3EMfyEmS3e3u1l26z2N9LWZycVitRAOfCRme0JYGYrEUMLA4hJ7Bvd/TzgIeAbxEEFcSCWPvTXgC+nIcMe6XHtGQ8Mt8g6g/jyv7yBr+dLZrZtei3DiC/EJ9N+DzGz+dPQ2WHEQd6W8te2DXEmfTnwKvGe9GrneSV3AFuV/bEfTAxf3A78T2qsSGP1TwALmtkY4NvufhUx9PIuMcdRrvT81dLzv5Ye8wDtcPdr3H2Vsi+B0vBlaVJ5LPFlvKnXMFdSYTxwuJn1Tu/thcSX/Jpp2ye4+41Ez3IB5rx/M5n7GBqYXtcgopfUlvuJobsh6bH9ifmyFczsdGCUu/+F6A0+BfRtYxuf7YuyM2gz+z4xfHizux+dXtfaGd+De4C+ZrZu2tauxIlBLVWhxwP7pYYdYijvztQLvAfYL217VWLec65td3AMlR/P5W4F9kgnKT2B84gTlbYcQwxnHl4W6xFm1sPMFiCOq8NrfB9uBr5b9ndyCDGUiJndS4ziXEIMTX8RWKK928u2eX883TZK2/kq0aub0M7rkjYUpoFy90+AnYlG4wnioBnl7vcQPaYt0u33EUNrq6aD+T5gLTMb5+5PE5OxDxMHyCsd7PJPwN+A+83sKWJoZt8GvqSPgL3M7HHgeOAb7j4TOBWYRkza/pv4gx3Zzjb+CYwws2OJBvRMM5tIjI/fTZxlt8vdnyR6CzelOLYFDnH3p4g/qqvS7T8DdkpDOj8Dvpduf4AYrvlXxXafJr54rjezScDpwLAah7E+Y2aDgWHp9dxjc+aWKucqqvkZkezyKJGKXJp7eoL4rJ8xs0eI3tvTzHn/rgfuNrO1gaOBkamXdyCRoPA57v4akWDzq/ReXU7MR71IzI/0T+/Nw8ALwJ/b2MwIYpjoEaKnUTpeLyMaz6fN7GGicT0nyxvg7m8SX+6Xpe1uQzQMH7TzlDvN7L2yf4cSCQ63Ej2/fxM9iu+lx+8NfCu95t+n11a57faOoaeAmWb2IHP3GP5IvM8TiZO4V4A2hyXd/S3iMzo5DTmOIIZqnyQ+5yeBX9byPrj7eGKu9pb0HbMH8M00UnIUcIqZPUqc8P00nUC1d3tpm68DuwO/TcOvY4D93P3Ztl6XtK2HlttoPItsv0nuvkhXxyKtJY0InEBkFH5gZhsQw+MrVAxN17v944HrPDLcFicahe3SSUth5P0+SHMUKs1cRDrHI6X+E+AhM/uUGFr+VgO/lJ8lMlJnEd8fpxetcYKmvA/SBOpBiYhIIRVmDkpERKRc7kN8EydOXIC42PAV2khJFRGRufQiskcfGjBgwMddHUxXasYc1Ia0c/GpiIi0a3MiW7dlNaOBegWgb9++9O5ded1sPiZNmsTaa2e9bKS5ihqb4qpdUWNTXLUpWlyffPIJzz77LHR8mUxLaEYDNROgd+/eLLDAAk3YXWjmvmpV1NgUV+2KGpviqk1B42r5KRElSYiISCGpgRIRkUJSAyUiIoWkBkpERApJDZSIiBSSGigRESkkNVAiIlJIHV4HZWbzA6OJVUEXINYyep5YKbQHsUDb8LJVRkVERBqi2oW6ewJvuPteZrYkscjeI8Bx7n6nmV1CLDQ3Lt8wpehWO/es/DZ+z4T8tt0Jq//w/q4OoeWNf/nxz93WczmtCdhdVGugxgLXpp97ECtS7uruM82sN7AcUNcqqiIiIh3psIFy9/cAzGxRoqE6ITVOKxNLQr8DfP4URkREpJOq1uIzs5WIIbw/uPsYAHd/EVjTzIYDvwb2yTVKKbwpI36cy3YnTpzIgAEDctl2Z00cXMzYivqeFTUuKa5qSRLLAjcDU4EDzGx/Yunkg9z9OWBdYLu8gxSpxaxpfZuyn2M2XK/qYyafPaiubefV4IvMS6r1oI4j5pm+CHj6fzpwSZqDWhV4MdcIRUSkJXV4HZS7j3T3JYCV3H0o8BtgCrAT8DqwJdGjEhERaahM60G5+wwzuxTYBdgduAj4EfBhjrGJiEgLy7xgobvvY2ZHAy8A04AJwBeAhczsUndXooQUQrOugzn9IU36i+QpSxbfXkAfdz8N+IBonI4ielJHAf8EFskzSJFG6iiJYo1rDs68nWoX6t4ya2zmbYnI52WpxXc9sL6Z3QmMB34ITCIatx5ALzQPJSIiDVa1B+Xu7wPfKr8tXRu1CtFgLQ2cm0dwIiLSuuqtZn4EMN7d+wLrAZea2YKNC0tERFpd5iSJCm8Bg83sPmBBYAliqE+k8DpKopgyIvt2ilpJQqS7qLeBehj4PjCZKCD7rzQUKFK3tpIX1l8RZk3rgmA6sM0KUUFi8tmDClFpXVUnpLuqd4hvCHAJ8CbwHnBaowISERGB+huopYGBRKr5IcCVZtajYVGJiEjLq3eI7w3gGXf/BHAz+wj4EvBqwyITEZGWVvOS7+5+A3A38Hszex+4AViYaLRE6tZW8kIRl2i4ZVb8X8TYRLqTmpd8T5l7hwGLAccABwKHufvMfEMVaYxGLcex+z0Ht5skocQFkc6rZ8n3RYCTiXWgprn7+blFJyIiLaueJd9fAF4wMy1UKCIiuamaxZfKGt0BXF5a8l1ERCRvWZd8/x2wNzDazNYgroFaCZhqZhe4+6y8AxVplEYtxzFWlSREcpVlyfc+wBnALDObQFyYewIwFPgasDMwLr8QRerTqGSI9nSUJNEWJU6I1Kbqku/AvsD6wNNp2ff1idJGJwNnAVvlG6KIiLSiqnNQ7n4dc6/31MPdZ6efpwOL5xGYiIi0tnpKHZXPNy0KvN2gWERERD6TtdRRf6Bf+nmymb0GPAX0Ba7JIzCRzmpUMkR7lCQhkq+qDZSZHQXsT1yoC5HV14cofXQToJlf6XKrnXtW0/e5+g/v7/D+8S8/3ubteTecIt1FliG+ycAwoscE0Ti9SMxLzQa+kE9oIiLSyupJkngQONLdhwBTgJNyik1ERFpYPcttjHP3UmLEOOC3DYxHpC5dcY2RlnwXyVeWOaj5gV8D/czsQWBxM3sR6A2sCCxjZle5+3fyDVWkdnnOTbU1B1Wad9I8k0jnZZmD2pNIJX8a2JZYZmPhdN8TxHzUEblEJyIiLStLAzUWGOnug4hMvg/dfXCqKvEScI67v5JjjCIi0oKqDvG1teRG+n0Z4Ouo9yQiIjnIlCRhZsOAMcBIYCczOwhYAfgScCWg+ScppDyTJ5QkIZKvLEkSpwBHAVPcfTQwOt1+I3EdlHpQUrOakhdqqBjeTNUu1K1Fexf1tkUJGNIqsvSgNiCKwvZJy21ALPe+KXCS5p9ERCQPWS7U3RHYkLTcRkqOWBSYBpyXb3giItKq6qlmDrAbMMbdZzYyGBERkZJ6KklALFI4y8zuAz4Ghrv7840LS7q7rMkLEycWNxFBSRIi+aq3gRoI3O3um5jZIGJl3Z0bF5bMyxq51Pr6K8KsaQ3bHADbrLBeQ7Yz+exBhU3gmKKGU7qBTA2Uu08FBpXddC1RNBZ3v9/MBjY+NBERaWX1zkEtBrxT9vtMM6u3NyYiIvI59TZQ7xKZfJ9tx91nNCAeERERIHs189HAKsQquqcCLwO/N7MfAK8AT+YYo8xjGnkhaR5JErfMasx2iprAMXHixK4OQaQhsgzL7Qm84e57mdmSwGPAq8DdwLLEBbvn5BeitLLd75lQ2ESERlWS0BIdIm3L0kCNJZIiIKqZzwD6uPtAADPbDmXwiYhIg2WpJPGeu0+vqGY+xcy2SA8Zxpz1oURERBoiU5KEma0E3AFc7u5jgP2AY83sNmK47/X8QhQRkVaUJUliWeBO4B13H21m/YHriUSJ94E+6XeRhhs7eGghExFAlSRE8pZlDuo6ohFaKlUz7w+cCOwPLA980d2H5xahSJlGVqkoqbeyRGcqSeS5TpVId5FliO83QD9SNXPgK+5+rrv3B34N3JZjfCIi0qKyJElcB3xa9vsrAGa2KXA40YCJiIg0VF2VJMzs28D5wA7u/lpjQxIREakyB1VWRcKAfma2E7A2cAzwNHCCmQ139wZdmy/SsTwuZq23skRRK0mIdBfVkiT2BN4AvkVcsPs7YDngP8BHwA7AlcB3c4xRWlyjEiMatcxGSSOW21CyhEj7qg3xjQVGpeU2tiWqSJwKnARsCTwAXJpngCIi0po67EG5+3sAFVUkZgO/Tz+/A0zIN0QREWlFWS7UXQkYB/zB3ceY2avA5u7+lJkdRqyme1jOcUoLa9S8U6OqmJdoDkokX9WSJJYFbgYOd/fS9U5vEutBQdTg2w01UNIkq517VlP2k6VS+fiXH8+8HL0qlYvUrloP6jhgCWCUmY1Ktx0IXGVmywNfAp7PMT4REWlR1eagRgIj27hrsJntCjwBXJ5HYCIi0trqXfL9cxUmREREGilLkkQv4ELiYt3ZwCFEBt9ywILA+mZ2lbt/J89ARaCJ1w2NqP4QJUmI5CtLNfNhAO4+2MyGAj93950BzGxd4D7giNwiFKF5yRGVOkqWqCVJokTJEiLZZSkW+xfgoPTrysDbZXcfAUwrFZAVERFplCw9KNx9hpldCuxCpJVjZssAGwGNX6BHRERaXuYkCXffh2iMLjSz0vVPY9x9Zl7BiYhI68qSJLE3MWX8MdGg9QLWISpIPGVmWwPnufvVeQYqra3Liqp2kCyhJAmRfGUZ4vsYWIqoYP5F4CViyY13gK3c/e0Onpubjipcr78iHU5er3HNwTlEVINOVsDOjeKqSZZqE9Kabpk1tqtD6BayJElcDazp7kOAXwLPAAOI9aBuMLOLUjFZERGRhsk0B1WWJPFbYv2nB4EjU6M1hVh+Q0REpGHqSpIAbnb3iemuccD6OcQmIiItLEuSxF7AJkA/YKd08yQzmwp8ANwKTGzzyTnq6ILHapPXUzJUCchLUSfWFVftJg4uZmxFfc8Ul9QqS5LEl4E9iN7WeKJ6+c1EY7UwMJRUbUKksyqTX6olvLSn0cu7t0VLvovkK8sQ3zPAhsDT7r4J0WB9CnwIPAxs7+7vdvB8ERGRmmXJ4qusWr4K8Ja7bwX8L3B0PqGJiEgrq2e5jTeAG9LPNwIDGxeOiIhIyFSLr8LdwPbEQoXbA5uZ2Vru/kxDI5OWVJn8Uu8E9i2zGhVR+zS5LvOSrXvu3gtYvcGbnXzLrLG5lburp4H6MfAnMzsUWBV4tbEhiWTTUTWRcnklTFQmSSjhQQpudcAbvE0DcltDJms186nAoPTzi8DWZnYOcDJwbF7BiYjIvMvMegJ/ANYjyuYNd/fnsz6/riXfzWxf4DV3H1/P80VEpCV8A1gwZYAfQxQZz6yuBgrYn+hFTQD6A5eZ2XJ1bktERLqnzYCbANz9fmpMqstSSaIXUd7IgNnAIcRaUBcCSwA9gOPdvY7LKUXql3X59LwSJpQkIVLVYsTKFyUzzWw+d5+R5clZ5qCGAbj7YDMbCvwceAu40t2vMbPHgNVqi1lkjs4snVKuGdUjyjWikgQouUK6tXeB8tUuemZtnCDbhbp/AQ5Kv64MvA0MBvqY2a1ENYkrMocrIiKt4h7iciTMbBDwZC1PzprFV1puYxdieG8PUjUJMzuRqCZxYi07FhGRpppMTNU0epsdGUfkK9xLTAftV8vGM18H5e77mNnRwANEL6q8msTPa9mpSLnOVKYv14yLc8tpDkrmJemC2tyuWWqLu88i8hbqknW5DQP2IVIGexIt4b1mdjtx4ddT9QYgrSnrRbalOahmzy9loTkokXxl6UHdQDRASwJ/Al4hctmHE0N+LwNfzytAERFpTVmugzoFOIBY5v27wIrANe6+NXAwcJ+7v5VfiCIi0oo6bKDaqRjRw91np5+nA4vnFJuIiLSwakN8+wOzzWwrUsUIYJmy+xclEiZEapL1IttSIkKzEyCyUJKEzEtWO/esXKqZTxnx466pZu7uQ8oqSawP9ALuNrPvAd8nXuyTZtYzZWuIdNpq51aU66ojEWH1H97fmGA6MP7lxzNdRJy1MRbJ2TxXzTzLHNSw9P+jwDnAjPT/EsA/gReAnXOJTkRE5nlmtnGq3VqTzJUk3H0okV7+ElE2fW133x/4B7BVrTsWEZHuz8yOIjLAF6z1uZmqmZdVkvgtcCVKlBARkWwmA9+s54mZKkmY2cZEHb6+RCWJhczsN8R45isoUUIaqPzC1boTEUY0MKB2KElCpDp3v87MVqnnuVkqSVwFDAWmAh+km2cC3wJ+BmwH3FHPzqV1fC7xoRYNqNYAjU+cyJokkZWSKUTmlmWI7wbgEaAfMB44lait9ClwFNAbuDavAEVEpDVV7UG5+5hUifaqtGwvAGa2NjDN3c/PM0AREWmIrqhm3imZq5mLiMi8K11Q2yXjyO4+FRhU6/M6bKDMbH5gNNHq9jOzndy9tMzGOsDegHpQUlW9FbsbmojQ4MQJJUmI5KtaD2pP4A0iIWIs8DvgBjNbn6gsIdJwqiQhIlA9SWIsMCp1z7YFZpjZUsAviOoRr+YbnoiItKpqtfjeAzCzRYlMvVHARcCPgA9zj05ERFpWluugViLWlf8D8BywJnAeUbain5md7e4/zDVKERHplFnT+uZSzbzncs92TTVzM1sWuBk43N1vSzd/NSVPXE1cG7VpRfKESKeokoRILua5aubVelDHEVXLR5nZqHTbdsB3iPJGTwPbA48RF/RKC+pUlYgsOllJIq+EiUZXkuiIEi1kXlSWCb4KsABwai2dmWpzUCOBkW3sdCxwrbtPT0kTM2oJWkREWsKewBvuvpeZLUmNnZm6LtRtI3nihHq2IyIi3dpY5pTC60GNnZm6K0mUJ0+4+5h6tyMiIt1TZzszdTVQZrY88CTwX2B/M3vQ3SfVsy2Z99VbJSKLhiQi5JQwoSQJkeo605mptwd1AVHF/HXgi8AEM1vJ3XVtlMylIQkUnUiSyLOihJbbEOlYO5ngmdU7BzXMzOZLK+3uA3xNjZOISKF1RTXzNjPBs7YXdc9BlS0DvwuwW73bERGR/KULapvaTW8vEzyrTi234e77mNnRwANm1s/d3+/M9qT76ez8VKfneXK8YFdzUCL5ylLqqBdwIdE1nE2sprszMBx4kTlpg7NyilFa0FxzVxVzUM2oVJ5Fe3NQmksSaYwsS74PA3D3wUSK4M+JyubPpeevCjymOSgREWmkLEu+/8XM/pZ+XZkocXSIu78CYGaHASvmF6KIiLSiTHNQlQkRZY3TpsDhwJD8QhQRkVaUOUmiMiEC2BE4HtjB3V/LK0BpTaXkijYTEZpQqTwLJUmI5CtLksTexFfCx8ScUy/gh8DRRDXzE8xsuLsrSaJFFaGaeVckTjSjmrkSLqSVZUmS+BhYCpgJLAa8BJwEvAZ8BOwAXJlXgCIi0pqqNlDufjWwprsPAX4JPAOcSjRSWwIPAJfmGaSIiLSeLD2o8iSJ3xK9peeAc4F/A8sCE/IKUEREWlMtF+quQTRIlwALEZXM3yaG/s4CDsstSim0QlQz74LECSVJiOQrSxbfmcC67j7QzLYnFqDqBYxK10iNBdbPM0hpvtwTH2qRsZp5sxMlmrnke3uURCHdWZYhvhOAF8zsTmJY7wHgfeBIM/sXsDrwQn4hiohIK8qSJPG+u+9ONELLAKcDDhzn7lsA96M6fCIi0mCZkiQgLtQF+hLzUd8HjjWz24BXiYULRUREGiZLksRewCZAP2Anore0I3A9sB9xjdQ/c4xRukCeiQ+1qCkRocmJEkqSEMlXliSJLwN7EL2t8UQViVWIzD2A2939H7lEJ4XS6MSJoiybUa88kiSU9CAyR5YhvmeADYGn3X0T4G5iuY1Ngafc/fgc4xMRkRaVJUniOuBT+OyaqIuAHwHT8w1NRERaWeYkiWQAsCZwHnAV0M/Mzm54VCIi0vKyLrfRH+jn7g+mpInz0+0fEL0paQENT5zIkNRQ5ESEIscm0h1kyeI7Ctgf6JFuuoD4anmZmI/aA7girwCl6+VVVUJJEu1TsoRItiG+ycAw4Kn0ex93v9fdpwIHAgA81M4AABB/SURBVJvlFJuIiLSwmpIkkilmtkX6eRiwcB6BiYhIa6s1SQLi4lxVkRARkVxlTZIotwPwPeAWYDjwppld7O77NTQyKYzcqkooSUJEOlBPA/UccDtRxfwcXag776ia7JBxWYvOmNcTI8oVYbmNckqskO4m64q6U919UPr5RuAg4CVgQzO73cwG5RijiIi0oHrmoCCufzoT2AY4BLjSzOrpjYmIiLSp3kblWeB5d58NPGtmbwDLA/9pWGTScB3NJTVtPqXGiuNFnucpcmwi3UGmBsrMlgEmAlu7+zPEhbuHmNl5wA3AYsAruUVZIdOFo02YT6lbUWNTXDXpTvNp87rxLz+e+bGaq5t3VB3iM7P5gT8CH6bfvwTsDKwG/AS4Gtjf3WfkGKeIiLSYLD2oM4nae8em3xcBTgK2A6a5+/ntPVFERKReHfagzGxf4DV3H1+6zd1fcPcH8g5MRERaW7Ue1P7AbDPbiqhofpmZ7eTuXXr1R7ULR4s8eV3U2BRX7SYOLmZsRX3PihqXFFeHDZS7D0lzUKOJBmpBYCMz+w+xzMY0M/sOcJ67X517tJJbZXEg92SE7pZUULQLdUvWX5EO41KSgMwrssxB7Qm8ATwGHA2MBU4B7gPGaQ5KRETykOVC3bHAKHcfCjwPzCBW1p0f2MPMLjKzRfMLUUREWlGW5Tbec/fpqRG6FjgBeBA40t2HAFOIrD4REZGGyXqh7jBgDDASeBq4EPjYzJ4FzgLOzS1CmUtelcWbMoFdYxUJKPbEelFjK2pcIrXKsuT7KcBRwBR3H21m44BFgcOIBmsEUWVCulBDkicamCTR3RIi2lLUJAn4c1cHINIQWXpQGwDTgT5mNgFYGbgM+A1gwCRgp7wCFBGR1pRlDmpHYEPg6ZQocRzwA2ApYDKwrbu/m2eQIiLSeupZbuMcYHN3X4voSeV4YY6IiLSqepbbeBP4yMzGEOnmi5nZ2e7+XGNDk1p0Nnmi4RPrdSREtKXIE/6Fje0lTQlL91BPAzUcuBlYCHgKOA34HbF4oeQk1woSJUqSqElRkyQ6qiShKhIyL8nUQLn7VKC05PvdZjYeuMXdxwGY2SV5BSgiIq2p3iXfHwN2NLMeZjYIWNHMejUwLhERaXH1NlCjgXeBu4BdgInuPrNhUYmISMvLWkliY+AMdx9qZv2IKwHnJ0oeXU9cGyU5yquCRImSJGpX1NiKGpdIrbJUkjgK2At4P930C6Ie30hge2BdYMe8AmwVTUmCqKaOJIlWSIZoz7yYJFFJSRNSZFmG+CYD3yz7fVd3v5FonB4BfuLuL+cRnIiItK4slSSuAz4t+32mma1MpJgvDTyeX3giItKq6kqScPcX3X1N4Hzg140NSUREpMocVNly7wb0M7OdgEPT83oDywJP5h1kK8g7CaKauifWG5QM0Z4iT/gXNbaixiVSq2pJEqXl3r9FrKz7O6JBWgV4BXgL+EuO8XVrhUiMKNeJShKtmCzRHZIkyilhQoqm2hBfabn3qcC2xHLvfYELgJnEUhvj8gxQRERaU4cNVDvLva8CvOXuWwH/Cxyde5QiItJyqiZJmNlKwB3A5e4+hhjyuyHdfSMwML/wRESkVVVLkliWqFw+FTjAzPYHniCugbqcyOD7tN0NCNDGXFMDq4Z3pVacd+rOZk3r+9nPmo+SIqjWgzoOWA7oTzREi6TbDzCzt4CNgZvyC09ERFpVtTmoke6+BLBSWu79N0T23n5E0sQvgQ/yDlJERFpPpgt13X2GmV0K/Ba40t1fcPcH8g1NRERaWeYVdd19HzM7GnjAzPq5+/tVnyTA3BfhFvUiyrriyvkiXSju+wXFja2ocYnUKks1832Jr6L3iWXeFwRWMbM/AisBU83sAneflWegUr/MFwSn5A0lP2STx4W6Sk4QmSPLEN8CRHLE7PSvJ3AacU3UxUAPYOe8AhQRkdaUpYG6Ehjg7kOIxIjpwADgX+5+MnAWsFVuEYqISEuqOsTn7u8BVFSTONPdZ6eHTAcWzy1CERFpSVnmoHoBY4AdgJeJC3V7mtndxPDeR8AzeQYpnZOlUvpcE+tNSH7IqsgT/kWOTaQ7yJLFtyewDTHPNBP4OTEXdY27n2tmDjyaX4jznqpJCUWtJFElLiVPzK27VTOvpIQN6WpZGqgNiF7SKGL9pyWA7YCzzWwPYGFUTUJERBosy5LvI919OeBFYEVgb3d/FNgbWAqYhnpQIiLSYJmXfHf3fYi1oC40s4W17LuIiOQpy5LvdxA9p9eIlPL5gP+a2bPA28B1gC7SLdNRUkJRJ9YzxdUFyRNFfb+guLEVNS6RWmVZ8v0xInuvD3AZ8BxR5fwgYvHCY4DB+YUobSlfGqHSNius18RIWtfkswc1POElS8alSKuo1kCNBa5Nq+ouBTwEbO3urwCXmtlhwIrpdxERkYbpsIFq6yLdUmNkZpsChwND8g5SRERaTz1LvmNm3yaSI3Zw99fyDVFERFpR1iXfD3f329JtexLXRL0GjDazBYkVd5dz97dzjleSji6ivKWOlJWiTqwXNS4odmwi3UG1OajjiAtzR5nZKKAXsDZxTdSM9JiewIg8G6fMy0WUK2q1BlDFhm6iu1eSaLw/d3UAMo+pNgc1EhjZ3v1mNpAoHHtBowMTEZHWlvlC3XYcB/y0EYGIiIiUq7uBMrMvAubudzQwHhERESBbsdj2DAFua1QgHan14sUiT16rYkNtihoXFDe2osbFSxO7OgKZx3RmiM+AKY0KREREpFzdPSh3/1UjAxERESnX2SQJERGRXKiBEhGRQlIDJSIihaQGSkRECkkNlIiIFJIaKBERKaTOXKibVS+ATz75pAm7muPjjz9u6v5qUdTYFFftihqb4qpNkeIq+67s1ZVxFEGP2bNn57qDiRMnbgbcletORES6n80HDBhwd1cH0ZWa0YN6CNgceAWY2YT9iYjMy3oByxPfnS0t9x6UiIhIPZQkISIihaQGSkRECkkNlIiIFJIaKBERKSQ1UCIiUkjNSDPPnZktBFwBLANMB/Zx99cqHvNrYDNgFvBjd7+nIHHtC3yfSC39q7v/LO+4ssaWHvcF4F7gGHe/qQhxmdmviM9yPuACd78wx3h6An8A1gM+Boa7+/Nl9x8IHAzMAE5197/lFUuNcR0BfCf9+g93/2kz4soSW9lj/k4c8+cXIS4z2w44CegBTAQOc3elOXeh7tKD+j7wpLtvDlwGnFB+p5mtB2wKbAzsBZxbkLhWT48ZCmwE9Daz+YsQW5nfA838I632nm0JrOHumxCN1NFmtkSO8XwDWDDt7xjgrLJYlgNGAIOBbYDTzGyBHGPJGtdqwPeIY34Q8D9mtm6T4uowtjKnAnl+bm3p6D1bFPgVsKO7bwxMBZZucnxSobs0UJsBpbP7fwJbVdz/EvABsACwGPBpQeLaCngYuBT4F3CPuxclNszsJ0Tv6fEmxZQlrvuA/dPPs4meZ57v2WfxuPv9wMCy+zYiPrOP3f0d4HmgWQ1BR3H9B9jW3WemHsD8wEdNiqtabJjZbsRIRu498hri2hR4EjjLzO4C/q+tEQVprnluiM/MDgCOqLj5/4B30s/TgcUr7p9B/EE8k+47sCBxLQ0MIf44FgLuNrON3P3tro7NzL4OrOnuB5vZ4EbG05m43P0j4KPU07yUGOJ7L4/4ksXK4gGYaWbzufuMNu5r6zNuelzpJOd1M+tB9AoedfdnmxRXh7GZ2drAHsBuwIlNjKnDuIi/xS2B/sB7wF1mdl+T3zepMM81UO5+EXBR+W1mdj2waPp1UaDyC35vYBoxDLMo0RDc7+7/7eK43gAmuPt0YLqZ/RvoCzzYqLg6EdsBwMpmNgFYC9jAzKa5+2NdHBdpSO9a4r07rVHxtOPdsngAeqYvtLbuazPeLogLM1sQGE00moc2KaYsse0NrAjcDqwCfGJmU5sxv1klrjeAh9x9GoCZ3Uk0VmqgutA810C14x5ge+KLfTs+X5z2LeA9d59pZtOJCdKFCxDXPcBh6cukF9CPGCZqhg5jc/c9Sj+b2SXAVY1snOqNKyVR3Aac5e5XNimeYcA1ZjaIGAYqeRD4efr8FgC+AkxqQkwdxpV6Tn8Fbnf3M5oUT6bY3P2o0s9mdjIwrUmNU4dxAY8Aa5vZ0sRJxiAgt+Qbyaa7NFDnAZea2d3AJ8QQAmb2S+JMewww2MzuJRqCK93duzoud3/QzC4i/nB6AD9z9zebEFem2JoUR01xEQkJqwEHpgw6gP3c/YWc4hkHbJ2OnR7Afmb2I+B5d7/BzM4lGtGewPFpCLIZ2o2LOMa3ABZImWkAx7r7fV0dm7vf0KQYao7LzI4FxqfHXuPuzTrZkHaoWKyIiBRSd8niExGRbkYNlIiIFJIaKBERKSQ1UCIiUkhqoEREpJC6S5q5dHNmthhxced8wLeJeop9gIuBtdx9eDvPGwgc0t79Vfa5EbCrux9dd+CxnQnAye4+oTPbEWk1aqBkXtEf+MTdB5rZl4F13H2Fak9y94eBmhunpB+wbJ3PFZFO0nVQkqtU1eB0YBeiJuIf3f0cM+sLXAAsCbwPjHD3h8xsWeCPwEpE/cRjgSeIorXLMadEzlrp9p8QvZOhZtY/PfcLwJtERe81yu5fg7gQeCmiePAP3P3RVCnjHWAA0Sv7KXFR5xPAIkTVip+XvaZHgIPc/WEz6wW8CGxAXBz7Y6Ku4kLEcg53lnpQ6eknu/vQtJ1LiHJNl5jZ3sAPiWH30lIPzSzwKlI4moOSvO1GVH9Yh6j+vV9apuIK4Fx3X5coGHttWqriHGC0uw8AdiIanA+JXtDD7r5Tuv1ldx9Ysa8riWoc6wBXASMr7r8UOMrdNwAOSo8pWQnYnCiFc2Yq2HsicEN545Rczpy1lr5GNGSvA4cQyzWsRzTKR2Z5g8zsq0QB403dvT/wKtHwirQ0DfFJ3rYgysZ8TNRA7G9mixBrOl0PsfSBmb0JGLG8xlpmdkp6/vzA6tV2kmqoLV9aMNDdz0u3D03/LwJsCFxsZqWnLWJmS6Wfb3b32WY2iejVdeTPwL1mdiTwXeAKd59lZrsAwyx2MBSYWS3uZEtgTeD+FFtvojacSEtTAyV5m2utJjNbhSje26PicT2I47EX8LVSTUIzW4FYgmPzGvezIFA+R9UL+Cj1UEqP6UMMBUJaLyk1Uh3uyN2nmdmzRCO0FXB4agAfInpXdxK9qsMrnjqbuV93aXHKXkQjPiLFtQj62xTREJ/k7k7gm2Y2v8Xy8TcRiQeTzeybAKmy9HJEJfDbSctDmFk/4ov+C9V2khYM/I+ZbZ1u2gs4peL+58xsz7TtrVNsHZlB+w3F5cSKrBPc/QNimZRZwC/Sa9iOaHjKvQ6sZmYLmtmSzGl0JwC7mNkyac7uPGI+SqSlqYGSXLn7OKJa+yNED+OctAjcnsAIM3sS+B3wTXf/BPgBMMjMngCuBvZK62VlsSdwkpk9RqSiV84BfQ8YnrZ9GvDttOJsex5MsZzexn3jiGG5K9LvjwOPEYtiPkIserdy+RPc/Sng78BTwFjSUiLu/jiRmHF7uq8nMYcl0tKUxSciIoWkHpSIiBSSGigRESkkNVAiIlJIaqBERKSQ1ECJiEghqYESEZFCUgMlIiKF9P+z3ahu7/fvXQAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "X, y = load_game()\n",
    "X = OrdinalEncoder().fit_transform(X)\n",
    "y = LabelEncoder().fit_transform(y)\n",
    "\n",
    "model = LogisticRegression(multi_class=\"auto\", solver=\"liblinear\")\n",
    "viz = FeatureImportances(model, stack=True, relative=False, colormap=\"viridis\")\n",
    "viz.fit(X, y)\n",
    "viz.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## MissingValuesBar"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "No handles with labels found to put in legend.\n"
     ]
    },
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# Make a classification dataset\n",
    "X, y = make_classification(\n",
    "    n_samples=400, n_features=10, n_informative=2, n_redundant=3,\n",
    "    n_classes=2, n_clusters_per_class=2, random_state=854\n",
    ")\n",
    "\n",
    "# Assign NaN values\n",
    "X[X > 1.5] = np.nan\n",
    "features = [\"Feature {}\".format(str(n)) for n in range(10)]\n",
    "\n",
    "visualizer = MissingValuesBar(features=features, color=\"lime\")\n",
    "\n",
    "visualizer.fit(X)\n",
    "visualizer.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## ClassBalance"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "X, y = load_game()\n",
    "\n",
    "visualizer = ClassBalance(\n",
    "    labels=[\"draw\", \"loss\", \"win\"],\n",
    "    colormap=\"copper\"\n",
    ")\n",
    "\n",
    "visualizer.fit(y)\n",
    "visualizer.show()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "## FeatureCorrelation"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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\n",
      "text/plain": [
       "<Figure size 432x288 with 1 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "X, y = load_concrete(return_dataset=True).to_pandas()\n",
    "\n",
    "# Create a list of the feature names\n",
    "features = [\n",
    "    \"cement\", \"slag\", \"ash\", \"water\", \"splast\", \"coarse\", \"fine\", \"age\"\n",
    "]\n",
    "\n",
    "# Instantiate the visualizer\n",
    "visualizer = FeatureCorrelation(labels=features, color=\"rebeccapurple\")\n",
    "\n",
    "visualizer.fit(X, y)\n",
    "visualizer.show()"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.7.1"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
